1
Optimisation de la compilation : Comprendre les profils de publication
AI034Lesson 14
00:00

En Rust, Profils de publication sont des configurations prédéfinies qui permettent aux développeurs de contrôler le compromis entre temps de compilation et performance à l'exécution. En ajustant ces paramètres, vous pouvez adapter le comportement du compilateur à votre flux de travail actuel, que ce soit pour une itération rapide ou un déploiement en production.

1. Profils Dev vs. Profils de publication

Cargo dispose de deux profils principaux : dev (utilisé par cargo build) et publication (utilisé par cargo build --release). Le profil dev est optimisé pour une compilation rapide mais entraîne une exécution plus lente du code, tandis que le profil de publication consacre davantage de temps à optimiser le code machine pour une efficacité maximale.

2. Paramètre d'opt-level

Le opt-level paramètre est le principal contrôle de la performance. Il varie de 0 à 3 :

  • 0 : Aucune optimisation. Compilation rapide, code lent. (Par défaut pour dev)
  • 1-2 : Optimisations intermédiaires.
  • 3 : Optimisations agressives. Compilation lente, code le plus rapide. (Par défaut pour publication)
  • "s" ou "z" : Optimise la taille du binaire plutôt que la vitesse.
ProfilNiveau d'optimisation par défautObjectif
dev0Itération rapide
publication3Vitesse en production

3. Personnalisation des profils

Vous pouvez remplacer ces valeurs par défaut dans votre Cargo.toml. Cela est utile lorsque le code non optimisé est trop lent pour les tests (par exemple, dans des simulations lourdes), mais qu'une compilation complète de publication prend trop de temps.

[profile.dev]
opt-level = 1 # Code plus rapide que le niveau 0, tout en restant rapide à compiler
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>